#include <GL/glut.h>
#include "includes/game.h"

#define WINDOW_HEIGHT 600
#define WINDOW_WIDTH 800

int main(int argc, char ** argv){
	
	/* Initialisation du moteur de l'application */
	game_init();
	
	/* Initialisation de glut */
	glutInit(&argc, argv);
	
	/* Initialisation du fenetrage */
	glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH);
	
	/* Dimensions */
	glutInitWindowSize(WINDOW_WIDTH, WINDOW_HEIGHT);
	
	/* Position initiale */
	glutInitWindowPosition(40, 40);
	
	/* Creation de la fenetre */
	glutCreateWindow(" ");
	
	/* Initialisation de l'etat courant */
	game_state()->init_handler();
	
	/* Attribution de la fonction d'affichage */
	glutDisplayFunc(&game_display);
	
	/* Attribution de la fonction de redimensionnement de la fenetre */
	glutReshapeFunc(&game_resize);
	
	/* Attribution de la fonction de gestion des touches */
	glutKeyboardFunc(&game_event_keyboard);
	
	/* Attribution de la fonction pour les touches speciales */
	glutSpecialFunc(&game_event_special);
	
	/* Lancement de la boucle principale */
	glutMainLoop();  
	
	return 1;
}